package cn.fl.custpay.service;

import cmm.mid.core.framework.page.Pager;
import cn.cmm.base.framework.exception.BaseException;
import cn.fl.customer.vo.CstBankVO;
import com.alibaba.fastjson.JSONArray;

/**
 *
 * @Description: 绑卡管理 客户端服务层接口
 * @Description: 持久层方法名称前缀：新增：insert* 删除：delete* 修改：update* 批量：batch* 查询对象：select* get* find* 查询集合：select*
 * @Description: 业务层方法名称前缀：新增：add* 删除：remove* 修改：modify* 查询对象：select* get* 批量：batch* 查询集合：search*
 * @Author shijb
 * @Date 2018/7/6 13:50
 * @Param
 * @return
 **/
public interface ICmmBindingCartService {
    /**
     *
     *@Description 查询客户开户行信息列表
     *@Author shijb   
     *@Date 2018/7/6 13:59
     *@Param [page]
     *@return cmm.mid.core.framework.page.Pager
     **/
    public Pager searchListPage(Pager page) throws BaseException;
    
    /***
     *
     * @Description 查询单条客户开户行信息
     * @Author shijb
     * @Date 2018/7/10 11:03
     * @Param [aLong]
     * @return cn.fl.customer.vo.CstBankVO
     **/
    public CstBankVO selectById(Long id);

    /**
     *
     * @Description 修改客户开户行信息
     * @Author shijb
     * @Date 2018/7/10 13:40
     * @Param [entity]
     * @return boolean
     **/
    public boolean modify(CstBankVO entity);

    /**
     *
     * @Description 根据主键客户开户行信息
     * @Author shijb
     * @Date 2018/7/10 15:05
     * @param vo    需要删除的实体
     * @return boolean
     * */
    public boolean removeById(CstBankVO vo);

    /**
     *
     * @Description 设置自动代扣，包括开启、取消
     * @Author shijb
     * @Date 2018/7/23 11:42
     * @Param id        银行卡id
     * @Param cstId     客户id
     * @Param isAuto      是否开启自动代扣：1开启，0取消
     * @Param currentUserName   当前操作人
     * @return boolean
     **/
    boolean autoChargeOperate(String id, String cstId, String isAuto,Long currentUserId)throws BaseException;

    /**
     * @MethodName sendSMS
     * @Description: TODO 银行卡信息补全选发短信
     * @Author: shijibin@lionbridgecapital.cn
     * @CreateDate: 2019/3/1 10:25
     * @Version: 1.0.0
     * @Param paramJsonList
     * @Return boolean
     * @UpdateRemark [序号][YYYY-MM-DD] [更改人姓名][变更描述]
     */
    boolean sendSMS(JSONArray paramJsonList) throws BaseException;

    /**
     * @MethodName batchSendSMS
     * @Description: TODO 银行卡信息补全群发短信（查找所有四要素不全的银行卡客户批量发送）
     * @Author: shijibin@lionbridgecapital.cn
     * @CreateDate: 2019/3/1 10:27
     * @Version: 1.0.0
     * @Param
     * @Return boolean
     * @UpdateRemark [序号][YYYY-MM-DD] [更改人姓名][变更描述]
     */
    boolean batchSendSMS() throws BaseException;
}
